- add_page_specific_style 'page_bundles/notifications'
- page_title _('Notifications')
- @force_desktop_expanded_sidebar = true

%div
  - if @user.errors.any?
    = render Pajamas::AlertComponent.new(variant: :danger) do |c|
      = c.body do
        %ul
          - @user.errors.full_messages.each do |msg|
            %li= msg

  = hidden_field_tag :notification_type, 'global'
  .row.gl-mt-3.js-search-settings-section
    .col-lg-4.profile-settings-sidebar
      %h4.gl-mt-0
        = page_title
      %p
        = _('You can specify notification level per group or per project.')
      %p
        = _('By default, all projects and groups will use the global notifications setting.')
    .col-lg-8
      %h5.gl-mt-0
        = _('Global notification settings')

      = gitlab_ui_form_for @user, url: profile_notifications_path, method: :put, html: { class: 'update-notifications gl-mt-3' } do |f|
        = render_if_exists 'profiles/notifications/email_settings', form: f

      = label_tag :global_notification_level, _('Global notification level'), class: "label-bold"
      %br
      .clearfix
      .form-group.float-left.global-notification-setting
        - if @global_notification_setting
          .js-vue-notification-dropdown{ data: { dropdown_items: notification_dropdown_items(@global_notification_setting).to_json, notification_level: @global_notification_setting.level, help_page_path: help_page_path('user/profile/notifications'), show_label: 'true' } }

      .clearfix

      = gitlab_ui_form_for @user, url: profile_notifications_path, method: :put do |f|
        .form-group
          = f.gitlab_ui_checkbox_component :notified_of_own_activity, _('Receive notifications about your own activity')

      %hr
      %h5
        = _('Groups (%{count})') % { count: @user_groups.total_count }
      %div
        - @group_notifications.each do |setting|
          = render 'group_settings', setting: setting, group: setting.source
        = paginate @user_groups, theme: 'gitlab'
      %h5
        = _('Projects (%{count})') % { count: @project_notifications.size }
      %p.account-well
        = _('To specify the notification level per project of a group you belong to, you need to visit project page and change notification level there.')
      .gl-mb-3
        %ul.bordered-list
          - @project_notifications.each do |setting|
            = render 'project_settings', setting: setting, project: setting.source
